Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour China Open - Beijing Australian Open - Melbourne Ottignies-Louvain-la-Neuve Challenger BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Zagreb Challenger Western & Southern Open - Cincinnati U.S. Open - New York Laver Cup - Berlin Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Zadar Challenger Miami Open - Miami Hopman Cup - Nice Internazionali BNL d'Italia - Rome Tiriac Open - Bucharest National Bank Open - Toronto Wimbledon - London U.S. Open - New York Laver Cup - San Francisco Japan Open Tennis Championships - Tokyo Hangzhou Open - Hangzhou Shanghai Rolex Masters - Shanghai Rolex Paris Masters - Paris Bosnia & Herzegovina F2 Croatia F8 Bosnia/Herzegovina F6 Bosnia/Herzegovina F1 Bosnia & Herzegovina F2 Croatia F7 Croatia F8 Israel F3 Croatia F1 Croatia F2 Italy F6 Italy F7 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F5 Serbia F1 Serbia F2 Serbia F3 Serbia F7 Croatia F7 Croatia F8 Croatia F9 Croatia F12 Croatia F13 Croatia F14 Turkey F32 Turkey F33 Turkey F3 Turkey F4 Croatia F1 Italy F1 Italy F2 Bosnia & Herzegovina F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F5 Italy F20 Croatia F11 Croatia F12 Turkey F2 Croatia F1 Croatia F2 Italy F1 Italy F5 Bosnia & Herzegovina F4 Serbia F3 Croatia F12 Spain F3 (Paguera (Mallorca)) Spain F5 (Murcia) M15 Palmanova M25 Martos M25 Denia M15 Manacor M15 Manacor M15 Antalya Bulgaria F1 Croatia F10 Sarajevo Challenger Blumenau Challenger Milan Challenger San Marino Challenger Cordenons Challenger Como Challenger Brasov Challenger Trnava Challenger Lermontov Challenger Prostejov Challenger Kosice Challenger Poznan Challenger Liberec Challenger Kazan Challenger Banja Luka Challenger Casablanca Challenger Irving Challenger Mersin Challenger San Benedetto Challenger Geneva Challenger Morelos Challenger Irving Challenger San Benedetto Challenger Alphen Challenger Mohammedia Challenger Guadalajara Challenger Prostejov Challenger Alphen Challenger Mohammedia Challenger Casablanca Challenger Blois Challenger New Haven Challenger Salzburg-Anif Challenger Tulln Challenger BH Indoor Sarajevo - Sarajevo Kobe Challenger Zadar Challenger Montemar Challenger Cap Cana Challenger Casablanca Challenger Rome Challenger Tashkent Challenger Trnava Challenger Moscow Challenger Braunschweig Challenger Santo Domingo Challenger Meknes Challenger Kenitra Challenger Helsinki Challenger Guayaquil Challenger Murcia Challenger Cordenons Challenger Barcelona Challenger Lisbon Challenger Istanbul Challenger Szekesfehervar Challenger Tunis Challenger Santo Domingo Challenger Orleans Challenger Quimper Challenger Lyon Challenger Santos Challenger Meerbusch Challenger Sao Paulo Challenger Matsuyama Challenger Canberra Challenger M25 Riba - Roja de Turia Noumea Challenger Salzburg Challenger Mallorca Challenger Arad Challenger Alicante Challenger Manama Challenger Aptos Challenger L'Aquila Challenger Seville Challenger Florence Challenger Trieste Challenger Rome 2 Challenger Oeiras 3 Challenger Nottingham 2 Challenger Trieste Challenger Meerbusch Challenger Barcelona Challenger Bergamo Challenger Bratislava Challenger Helsinki Challenger Lille Challenger Lugano Challenger Mauthausen Challenger Cordenons Challenger Brest Challenger Banja Luka Challenger Sibiu Challenger Yokohama Challenger Antalya Challenger Maia Challenger Ostrava Challenger Ostrava Challenger Tunis Challenger Ilkley Challenger Studena Croatia Open - Umag Bratislava Challenger If Stockholm Open - Stockholm Bendigo Challenger Winston-Salem Open - Winston-Salem Todi Challenger PBZ Zagreb Indoors - Zagreb Split Challenger Lisbon Challenger Grand Prix Hassan II - Casablanca Zagreb Challenger Geneva Open - Geneva Memphis Open - Memphis Delray Beach Open - Delray Beach Abierto Mexicano Telcel - Acapulco Sibiu Challenger BRD Nastase Tiriac Trophy - Bucharest TEB BNP Paribas Istanbul Open - Istanbul Winston-Salem Open - Winston-Salem Erste Bank Open - Vienna Delray Beach Open - Delray Beach Konzum Croatia Open - Umag Bet-at-home Open - Hamburg Abierto Mexicano - Los Cabos Winston-Salem Open - Winston-Salem Shenzhen Open - Shenzhen Sydney International - Sydney ABN AMRO World Tennis Tournament - Rotterdam Dubai Duty Free Tennis Championships - Dubai AEGON Championships - London Antalya Cup - Antalya Plava Laguna Croatia Open - Umag Abierto Mexicano - Los Cabos St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen Bendigo Challenger Kremlin Cup - Moscow Alphen Challenger Bergamo Challenger Banja Luka Challenger Samarkand Challenger Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Santo Domingo Challenger Heilbronn Challenger Arad Challenger Astana Open - Nur-Sultan Kosice Challenger Great Ocean Road Open - Melbourne Abierto Mexicano Telcel - Acapulco Millennium Estoril Open - Estoril Plava Laguna Croatia Open - Umag Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Anytech365 Andalucia Open - Marbella Hamburg European Open - Hamburg Firenze Open - Florence San Luis Potosi Challenger Qatar ExxonMobil Open - Doha Rio Open - Rio de Janeiro cinch Championships - London Cherbourg Challenger Sarajevo Challenger Bratislava Challenger BRD Nastase Tiriac Trophy - Bucharest Lima Challenger Poznan Challenger Plava Laguna Croatia Open - Umag Serbia Open - Belgrade Erste Bank Open - Vienna Next Gen ATP Finals - Milan Ostrava Challenger Argentina Open - Buenos Aires Poznan Challenger ABN AMRO Open - Rotterdam Argentina Open - Buenos Aires Millennium Estoril Open - Estoril Rio Open - Rio de Janeiro Nordea Open - Bastad Andria Challenger Mersin Challenger Mallorca Championships - Mallorca Mercedes Cup - Stuttgart Barcelona Open Banc Sabadell - Barcelona Boss Open - Stuttgart Genova Challenger Nottingham 1 Challenger Sarajevo Challenger Brisbane International - Brisbane Buenos Aires Challenger Kosice Challenger Open 13 - Marseille Kremlin Cup - Moscow Aircel Chennai Open - Chennai Nordea Open - Bastad Erste Bank Open - Vienna TEB BNP Paribas Istanbul Open - Istanbul Ostrava Challenger Vegeta Croatia Open - Umag Bet-at-home Open - Hamburg Sibiu Challenger China Open - Beijing Almaty Open - Almaty Qatar ExxonMobil Open - Doha Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Garanti Koza Sofia Open - Sofia Winston-Salem Open - Winston-Salem Open de Nice Cote d'Azur - Nice Aegon Nottingham Open - Nottingham Konzum Croatia Open - Umag Braunschweig Challenger Erste Bank Open - Vienna Tampere Challenger Kremlin Cup - Moscow Bratislava Challenger Bratislava 2 Challenger Garanti Koza Sofia Open - Sofia Memphis Open - Memphis New York Open - New York Dubai Duty Free Tennis Championships - Dubai Forli 5 Challenger Hungarian Open - Budapest TEB BNP Paribas Istanbul Open - Istanbul Kenitra Challenger St. Petersburg Open - St. Petersburg Perugia Challenger Como Challenger Erste Bank Open - Vienna Open Sud de France - Montpellier Hamburg European Open - Hamburg Vancouver Challenger Mallorca Challenger Gazprom Hungarian Open - Budapest Open Sud de France - Montpellier Biella Challenger Alicante Challenger ABN AMRO World Tennis Tournament - Rotterdam Marbella Challenger Gran Canaria 2 Challenger Banja Luka Challenger Plava Laguna Croatia Open - Umag Barcelona Open Banc Sabadell - Barcelona Marbella Challenger Belgrade Challenger Geneva Open - Geneva Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad Split Challenger Zhuhai Open - Zhuhai China Open - Beijing Open Sud de France - Montpellier Rio Open - Rio de Janeiro Abierto Mexicano Telcel - Acapulco Barcelona Open Banc Sabadell - Barcelona Open Sud de France - Montpellier Zug Challenger Rosario Challenger Santo Domingo Challenger Barcelona Open Banc Sabadell - Barcelona Serbia Open - Belgrade Movistar Chile Open - Santiago Generali Open - Kitzbuhel European Open - Brussels Delray Beach Open - Delray Beach Rio Open - Rio de Janeiro Open 13 Provence - Marseille Prague 2 Challenger Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona BMW Open - Munich bett1HULKS Championships - Cologne Istanbul Challenger Plava Laguna Croatia Open - Umag Astana Open - Astana Qatar ExxonMobil Open - Doha Stockholm Open - Stockholm Swiss Indoors Basel - Basel Bratislava 2 Challenger Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Banja Luka Open - Banja Luka cinch Championships - London Hamburg Open - Hamburg Ismaning Challenger Helsinki Challenger cinch Championships - London Danderyd Challenger Barletta Challenger Sony Open Tennis - Miami BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Internazionali BNL d'Italia - Rome Nottingham 2 Challenger Shanghai Rolex Masters - Shanghai Miami Open - Miami Bonn Challenger BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells PBZ Zagreb Indoors - Zagreb Miami Open - Miami Mutua Madrid Open - Madrid Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Apia International - Sydney Internazionali BNL d'Italia - Rome Open Parc - Lyon Kremlin Cup - Moscow Brisbane International - Brisbane Open 13 Provence - Marseille Western & Southern Open - New York TEB BNP Paribas Istanbul Open - Istanbul Abierto Mexicano de Tenis Mifel - Los Cabos BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid ABN AMRO World Tennis Tournament - Rotterdam Vilnius Challenger Heilbronn Challenger Bratislava 1 Challenger Western & Southern Open - Cincinnati Rolex Paris Masters - Paris Belgrade Open - Belgrade Adelaide International - Adelaide Canberra Challenger BNP Paribas Open - Indian Wells Phoenix Challenger Hellenic Championship - Athens Miami Open - Miami Bordeaux Challenger Monte-Carlo Rolex Masters - Monte-Carlo Astana Open - Astana Western & Southern Open - Cincinnati BNP Paribas Open - Indian Wells Mutua Madrid Open - Madrid Miami Open - Miami Shanghai Rolex Masters - Shanghai Western & Southern Open - Cincinnati Rolex Paris Masters - Paris Monte-Carlo Rolex Masters - Monte-Carlo National Bank Open - Montreal Rolex Paris Masters - Paris Aircel Chennai Open - Chennai Stockholm Open - Stockholm Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Hangzhou Open - Hangzhou Japan Open Tennis Championships - Tokyo Dubai Duty Free Tennis Championships - Dubai Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Miami Open - Miami BNP Paribas Open - Indian Wells Rogers Cup - Toronto Miami Open - Miami Western & Southern Open - Cincinnati Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Western & Southern Open - Cincinnati Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rolex Paris Masters - Paris Shanghai Rolex Masters - Shanghai Cincinnati Open - Cincinnati National Bank Open - Toronto Mutua Madrid Open - Madrid Moselle Open - Metz China Open - Beijing German Tennis Championships - Hamburg Rakuten Japan Open - Tokyo Qatar ExxonMobil Open - Doha Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Wimbledon - London U.S. Open - New York Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London French Open - Paris U.S. Open - New York Wimbledon - London U.S. Open - New York U.S. Open - New York U.S. Open - New York Australian Open - Melbourne Australian Open Qualifying - Doha Australian Open - Melbourne Wimbledon - London French Open - Paris U.S. Open - New York Australian Open - Melbourne Australian Open - Melbourne French Open - Paris Wimbledon - London Australian Open - Melbourne Wimbledon - London French Open - Paris French Open - Paris French Open - Paris Australian Open - Melbourne Wimbledon - London Wimbledon - London U.S. Open - New York French Open - Paris U.S. Open - New York BNP Paribas Masters - Paris Bucharest Open - Bucharest Internazionali BNL d'Italia - Rome Davis Cup, Group II, 2R, BLR-BIH 4-1 Davis Cup, Group II, 3R, DEN-BIH 3-2 Davis Cup, Group II, 3R, BIH-LTU 2-3 Davis Cup, Group II, 3R, LTU-BIH 0-5 Davis Cup, Group I, 1R, BIH-POL 5-0 Davis Cup, Group I, 2R, SVK-BIH 2-3 Davis Cup, Group II, 1R, BIH-GRE 3-1 Davis Cup, Group II, 2R, FIN-BIH 2-3 Davis Cup, World Group, QR, AUS-BIH 4-0 Davis Cup, World Group I, PO, BIH-RSA 3-1 Davis Cup, Group I, 1R, PER-BIH 3-2 Davis Cup, Qualifiers, 1R, ESP-ROU 3-1 Davis Cup, Group B, Valencia Davis Cup, Group B, Valencia Davis Cup, World Group I, 1R, TPE-BIH 3-2 Davis Cup, Europe/Africa Group II, 2R, EST-BIH 2-3 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group II, 1R, BIH-LUX 4-1 French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) Davis Cup, Group II, 2R, BIH-MDA 1-3 Davis Cup, Group II, 1R, ZIM-BIH 1-4 French Open (juniors) All Lower level tournaments Davis Cup, Group I, 1R, ECU-BIH 3-2 Davis Cup, World Group, PO, SWE-BIH 3-1 Davis Cup, World Group, QF, NED-ESP 2-1 Davis Cup, Group I, PO, TUN-BIH 1-3 Davis Cup, Group I, 1R, BIH-MEX 3-1 Davis Cup, Group I, 1R, BIH-GER 0-4 Davis Cup, Group I, PO, BUL-BIH 1-3 Davis Cup, Group I, PO, UZB-BIH 1-3 Davis Cup, Group II, 2R, BIH-TUR 3-1 Davis Cup, Group I, 2R, BIH-NED 1-3 Mubadala World Tennis Championship Nitto ATP Finals - Turin Olympics - Rio de Janeiro Olympics - Paris Nitto ATP Finals - Turin Nitto ATP Finals - Turin Wimbledon (juniors) Manacor Challenger